From 2a9c4679984f270964e3d6f2345dc39065785853 Mon Sep 17 00:00:00 2001 From: Alex Crichton Date: Mon, 29 Aug 2016 09:30:14 -0700 Subject: [PATCH] Revert "Replace for loop with iterators" --- src/cargo/core/resolver/encode.rs | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/src/cargo/core/resolver/encode.rs b/src/cargo/core/resolver/encode.rs index fc2c27737..1f79fbdc4 100644 --- a/src/cargo/core/resolver/encode.rs +++ b/src/cargo/core/resolver/encode.rs @@ -96,15 +96,18 @@ impl EncodableResolve { g }; - let replacements: HashMap<_, _> = try!(live_pkgs.values() - .filter_map(|&(ref id, pkg)| pkg.replace.as_ref().and_then(|replace| { - assert!(pkg.dependencies.is_none()); - match lookup_id(replace) { - Err(e) => Some(Err(e)), - Ok(None) => None, - Ok(Some(replace)) => Some(Ok((id.clone(), replace))) + let replacements = { + let mut replacements = HashMap::new(); + for &(ref id, ref pkg) in live_pkgs.values() { + if let Some(ref replace) = pkg.replace { + assert!(pkg.dependencies.is_none()); + if let Some(replace_id) = try!(lookup_id(replace)) { + replacements.insert(id.clone(), replace_id); + } } - })).collect()); + } + replacements + }; let mut metadata = self.metadata.unwrap_or(BTreeMap::new()); -- 2.30.2